package Enum;
/**
 * 1.public static final可以省略不写
 2.枚举对象不能像自定义枚举类对象时new,要按照下面的语法：
 枚举名1(值1，值2)，枚举名2(值1，值2)，枚举名3(值1，值2);
 3.不需要生成toString,因为使用enum关键字定义的枚举类继承了java.lang.Enum
 在Enum中重写了继承自Object的toString(),直接打印的就是枚举名
*/
public class Demo02 {
    public static void main(String[] args) {
        //6.进行测试
        System.out.println(Color.RED);//RED
        System.out.println(Color.ORANGE.getCOLOR_NAME());//橙色
        System.out.println(Color.ORANGE.getCOLOR_NUMBER());//2
    }
}
enum Color{
    //2.写出本类对应的多个枚举对象
    /*1.public static final可以省略不写
     * 2.枚举对象不能像自定义枚举类对象时new,要按照下面的语法：
     * 枚举名1(值1，值2)，枚举名2(值1，值2)，枚举名3(值1，值2);
     * 3.不需要生成toString,因为使用enum关键字定义的枚举类继承了java.lang.Enum
     * 在Enum中重写了继承自Object的toString(),直接打印的就是枚举名*/
    RED("红色",1),
    ORANGE("橙色",2),
    YELLOW("黄色",3),
    GREEN("绿色",4),
    CYAN("青色",5),
    BLUE("蓝色",6),
    PURPLE("紫色",7);
    //3.定义枚举类的多个私有属性
    private final String COLOR_NAME;
    private final int COLOR_NUMBER;

    //4.定义本类的构造方法
    private Color(String colorName, int colorNumber) {
        this.COLOR_NAME = colorName;
        this.COLOR_NUMBER = colorNumber;
    }

    //5.生成属性对应的两个get()
    public String getCOLOR_NAME() {
        return COLOR_NAME;
    }
    public int getCOLOR_NUMBER() {
        return COLOR_NUMBER;
    }

}
